
#include "sort.hpp"
#include <iostream>

void InsertSortTest(std::vector<int> nums)
{
	InsertSort(nums);
	for (auto num : nums) { std::cout << num << ", "; }
	std::cout << std::endl;
}

void ShellSortTest(std::vector<int> nums)
{
	ShellSort(nums);
	for (auto num : nums) { std::cout << num << ", "; }
	std::cout << std::endl;
}

void SelectSortTest(std::vector<int> nums)
{
	SelectSort(nums);
	for (auto num : nums) { std::cout << num << ", "; }
	std::cout << std::endl;
}

void HeapSortTest(std::vector<int> nums)
{
	HeapSort(nums);
	for (auto num : nums) { std::cout << num << ", "; }
	std::cout << std::endl;
}

void BubbleSortTest(std::vector<int> nums)
{
	BubbleSort(nums);
	for (auto num : nums) { std::cout << num << ", "; }
	std::cout << std::endl;
}

void QuickSortTest(std::vector<int> nums)
{
	QuickSort(nums);
	for (auto num : nums) { std::cout << num << ", "; }
	std::cout << std::endl;
}

int main()
{
	std::vector<int> nums1{ 0, -1, -3, -5, -2, -4, -6, 1, 3, 5, 2, 4, 6 };
	InsertSortTest(nums1);
	ShellSortTest(nums1);
	SelectSortTest(nums1);
	HeapSortTest(nums1);
	BubbleSortTest(nums1);
	QuickSortTest(nums1);
	return 0;
}